#ifndef TEXTURELOADER_H
#define TEXTURELOADER_H

class Texture;

#include <Windows.h>
#include <gl/GL.h>
#include <gl/GLU.h>
#include <SDL.h>

#include <string>
#include <map>
#include <vector>
#include <IL/ilut.h>

class TextureLoader
{
	std::map< std::string, unsigned int> m_textures;
	std::vector<Texture*> m_textureObjects;

public:
	static TextureLoader& getInstance()
	{
		static TextureLoader instance;
		return instance;
	}

	TextureLoader();
	~TextureLoader();

	void reload();

	unsigned int loadTexture( const std::string& filename, Texture* obj );
};

#endif